package day1206zy.day1206zy14;

import java.io.FileInputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.Properties;
import java.util.Set;

public class demo14 {
    public static void main(String[] args) throws Exception {
        Properties p = new Properties();
        FileInputStream in = new FileInputStream("src\\day1206zy14\\data.properties");
        p.load(in);
        in.close();
        Set<String> strings = p.stringPropertyNames();
//        set集合
        Class<?> clazz = Class.forName("day1206zy14.User");
//        获取类文件
        Object o = clazz.newInstance();
//        对象实例化
        for (String string : strings) {
            Field df = clazz.getDeclaredField(string);
//            字段
            df.setAccessible(true);
//            一次可见
            df.set(o,p.getProperty(string));
//            设置o对象
        }
        Method toString = clazz.getDeclaredMethod("toString");
//        获取tostring方法
        Object invoke = toString.invoke(o);
//        调用方法
        System.out.println(invoke);
    }
}
